package com.htjc.integral.account.mapper.newdb;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;

import com.htjc.integral.model.newaccount.EcBpInComeIntegral;

/**
 * 积分收入表dao层
 * @author hlc
 *
 */
@Mapper
public interface EcBpIncomeIntegralMapper {

	/**
	 * 批量插入新数据
	 * @param incomeIntegralList
	 * @return
	 */
	int insertList(List<EcBpInComeIntegral> incomeIntegralList);

	/**
	 * 插入新数据
	 * @param incomeIntegral
	 * @return
	 */
	int insert(EcBpInComeIntegral incomeIntegral);

	/**
	 * 根据accountId和consNo查询可用积分不为0且可用的所有收入明细
	 * @param accountId
	 * @return
	 */
	List<EcBpInComeIntegral> selectListByIdAndConsNo(Map<String, Object> params);

	/**
	 * 批量更新数据
	 * @param incomeIntegralList
	 * @return
	 */
	int batchUpdate(List<EcBpInComeIntegral> incomeIntegralList);

	/**
	 * 查询积分到期数据
	 * @param string 
	 * @param
	 * @return
	 */
	List<EcBpInComeIntegral> selectStaleIntegral(String stringDate);

	/**
	 * 根据查询的过期积分ID修改状态
	 * @param
	 * @return
	 */
	int updateToStale(List<EcBpInComeIntegral> ecBpInComeIntegralList);

	/**
	 * 查询账户户号中过期积分
	 * @param
	 * @return
	 */
	List<EcBpInComeIntegral> selectAccountConsNoStale(String date);

	/**
	 * 当业务类型为电力积分转入时，查询转入明细
	 * @param accountId
	 * @return
	 */
	List<EcBpInComeIntegral> select04Detail(String accountId);

	/**
	 * 查询账户总过期积分
	 * @param
	 * @return
	 */
	List<EcBpInComeIntegral> selectAccountStale(String date);

	/**
	 * 查询账户总过期积分
	 * @param
	 * @return
	 */
	BigDecimal queryStaleIntegral(Map<String, Object> params);
	/**
	 * 分页查询划转数据对账
	 * @param params
	 * @return
	 */
	List<Map<String, Object>> selectPageDate(Map<String, Object> params);
	/**
	 *  对账批量处理数据
	 * @param map
	 * @return
	 */
	int updataIncomeIntegral(List<String> list);



}
